The present invention relates generally to data processing systems, and more particularly, to a method, system, and computer program product for implementing a standardized interpretive engine.
As known in the art, trunks and trunk groups are used to connect telephone company central offices (COs). Historically, analog frequency-division multiplexed (FDM) trunks were replaced in the 1960s and 1970s with digital time-division multiplexed (TDM) trunks using T-carrier and E-carrier technologies of various capacities such as the twenty-four 56/64 kbps digital speed 0 (DS0) channels in a T1 or the thirty-two DS0 channels in an E1. Today, the Plesiochronous Digital Hierarchy (PDH) of T-carrier and E-carrier for trunks usually has been replaced by the Synchronous Digital Hierarchy (SDH) as implemented in SONET (Synchronous Optical Network) rings on optical fiber carriers (OC). Unlike the higher T-carrier multiplexing levels such as T3, which carries 28 DS1s with 24 DS0s each for a total of 28×24=672 DS0s, the SDH technologies such as OC-1 carry the DS0s in a floating frame to allow easier dropping and insertion of DS0 channels despite slight timing differences of the network multiplexers.
While optical fiber technology as well as wavelength division multiplexing (WDM), which essentially frequency-division multiplexes multiple optical signals on a single fiber, has increased the bandwidth available relative to the costs of implementing, installing, and supporting a given bandwidth, capacity planning and management for large scale networks still can be valuable in the efficient economic use of telecommunication network assets and facilities. Generally, the public switched telephone network (PSTN) was developed to handle circuit-switched voice telephone calls. Local loops or access lines provide analog plain old telephone service (POTS) to residences and business. Generally, the loops or subscriber lines are connected to switches or to multiplexers known as subscriber loop carrier (SLC) systems, digital loop carrier (DLC) systems, or remote terminals that generally concentrate the traffic of multiple access lines into a multiplexed line that connects to a switch.
To establish connections through the telecommunications network, customers usually enter a destination address commonly known as a phone number that generally is interpreted by the originating switch to which the customer's access line is connected. In modem networks, the originating switch usually communicates Signaling System 7 (SS7) messages to various databases and other switches to establish a connection through the network from the calling address (essentially the phone number of the call originator) to the called address (essentially the destination phone number). The switches and SS7 databases establish a route for the call over the trunks between switches using network elements such as, but not limited to, transmission facilities, multiplexers, and possibly intermediate switches.
While the PSTN was initially designed to handle voice telephone calls, the network now is used for many other types of communications. Some of the traffic engineering concepts developed for circuit-switched voice telephone call capacity planning also are relevant for properly designing and sizing the more complex network of today. In particular, the load or utilization level of connection-oriented systems that use fixed quantities of bandwidth (or multiples of a base fixed quantity of bandwidth) for each connection can be measured by multiplying the time for each connection by the number of base bandwidth units utilized in the connection. For instance, an Integrated Services Digital Network (ISDN) Basic Rate Interface (BRI) connection using two 64 Kbps DS0 B-channels to an Internet Service Provider (ISP) for one minute represents 2 DS0 channels×60 seconds or 120 connection-seconds or call-seconds, when the base unit of bandwidth for a call is one DS0 channel. The connection-seconds or call-seconds unit of network load usage/utilization (as well as network load capacity) is a useful metric or measurement that has been used in telephone network traffic engineering when the network was all analog with analog switches and trunks, and that is still used today when the switches and trunks primarily are based on establishing digital connections at multiples of the DS0 56/64 kbps bit rate.
Although the PSTN generally standardized 3.1 KHz connections through analog switches and over analog trunks as well as 56/64 kbps ITU-T G.711 μ-law or A-law pulse code modulation (PCM) connections through digital switches and over digital trunks to handle voice telephone calls, the call-seconds metric can be used as a measurement for DS0-based data communications as well. In addition, other base bandwidth units than a DS0 or a 3.1 KHz audio channel may be used as well with the call-seconds metric. For instance, modern voice encoding algorithms such as ITU-T G.726 adaptive differential pulse code modulation (ADPCM) and ITU-T G.729 code excited linear prediction (CELP) support 32 kbps and 8 kbps voice encoding respectively. The bandwidth of a single 64 kbps channel could be managed at a level that allows 2×32 kbps ADPCM calls or 8×8 kbps CELP calls over a single DS0. For 32 kbps ADPCM calls, the 64 kbps DS0 has a capacity of 2 calls×3,600 seconds/hour=7,200 ADPCM call-seconds/hour. For 8 kbps CELP calls, the 64 kbps DS0 has a capacity of 8 calls×3,600 seconds/hour=28,800 CELP call-seconds/hour. Furthermore, the call-seconds or connection-seconds metric may be relevant for other connection-oriented communications (such as, but not limited to, the logical channels of X25 or the virtual circuits of frame relay and asynchronous transfer mode (ATM)) that are utilized in constant bit rate (CBR) applications that happen to communicate at some multiple of a base bit rate. Other load metrics or measurements than call-seconds likely would be used for measuring connectionless communications or connection-oriented communications in which the bandwidth utilized for each connection generally is completely variable. Thus, although the call-second metric normally is applied to circuit-switched calls through the PSTN, the metric is useful for other types of communications as well.
Several queuing theory performance models were developed by Danish mathematician A. K. Erlang, and are used in telecommunications network traffic engineering. Also, instead of using call-seconds as the units for work load, one skilled in the art often may use units of hundreds of call-seconds or centum call-seconds (CCS), or even the unit of Erlangs to ease the representation of workload numbers. As one skilled in the art will be aware, a centum call-second (CCS) is 1 call or connection occupying a channel (or server) for 100 seconds. In addition, one skilled in the art will be aware that an Erlang is one call or connection occupying a channel (or server) for one hour or 1 Erlang=36 CCS.
In the past, network traffic engineers have collected data on trunk group utilization and load levels to plan future network capital improvements and efficiently deploy networking equipment to meet the desired service level requirements. Often this utilization and load information was collected from network switches and other active network elements to generate reports that network engineers would manually sift through to help in planning future changes and reconfigurations of the network. The large volume of performance data generated by the network monitoring together with complexities of the computations often led to an estimation of network load based on a determination of a busy hour statistic, which generally was calculated with a frequency of about once per year. Network planning and forecasting based on such a yearly busy hour determination likely would diverge significantly from actual network usage and utilization over the course of a year in today's dynamically changing telecommunications environment. Thus, a system that automates many of these network monitoring, performance analysis, and capacity planning/forecasting tasks could improve economic efficiency by more accurately matching network equipment deployments to meet the service level requirements at a particular network load level. Such a system would reduce the underutilized network assets that are deployed, while increasing the deployment of network assets in areas where the service level goals are not being met or are just marginally being met.
U.S. Pat. No. 6,011,838 entitled “Process and System for Dynamically Measuring Switch Traffic” and issued to Stephen Todd Cox on Jan. 4, 2000 as well as U.S. Pat. No. 6,449,350 entitled “Processes and Systems for Dynamically Measuring Switch Traffic” and issued to Stephen Todd Cox on Sep. 10, 2002 describe some of the traffic engineering concepts related to switch elements and modules. U.S. Pat. No. 6,011,838 and U.S. Pat. No. 6,449,350 are each incorporated by reference in their entireties herein. However, neither of these two patents addresses the traffic engineering issues for trunking and trunk groups.
Thus, a heretofore unaddressed need exists in the industry to address the aforementioned deficiencies and inadequacies.